[INFO] cloning repository https://github.com/pka/doctags
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pka/doctags" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpka%2Fdoctags", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpka%2Fdoctags'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d67ebef96090bd297155b91074d708738bf0a0c7
[INFO] fixing pka/doctags against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpka%2Fdoctags" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/pka/doctags
[INFO] finished tweaking git repo https://github.com/pka/doctags
[INFO] tweaked toml for git repo https://github.com/pka/doctags written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/pka/doctags on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/pka/doctags already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5
[INFO] running `Command { std: "docker" "start" "3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating doctags/Cargo.toml from 2018 edition to 2021
[INFO] [stderr]    Migrating doctags-cli/Cargo.toml from 2018 edition to 2021
[INFO] [stderr]    Migrating doctagsfs/Cargo.toml from 2018 edition to 2021
[INFO] [stderr]    Compiling libc v0.2.70
[INFO] [stderr]    Compiling proc-macro2 v1.0.13
[INFO] [stderr]    Compiling syn v1.0.22
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling autocfg v0.1.7
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking regex-syntax v0.6.17
[INFO] [stderr]    Compiling serde v1.0.110
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling proc-macro-nested v0.1.4
[INFO] [stderr]     Checking crossbeam-epoch v0.8.2
[INFO] [stderr]     Checking aho-corasick v0.7.10
[INFO] [stderr]    Compiling quote v1.0.5
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling proc-macro-hack v0.5.15
[INFO] [stderr]     Checking once_cell v1.4.0
[INFO] [stderr]     Checking futures-core v0.3.5
[INFO] [stderr]     Checking ppv-lite86 v0.2.6
[INFO] [stderr]     Checking futures-sink v0.3.5
[INFO] [stderr]     Checking futures-task v0.3.5
[INFO] [stderr]     Checking futures-channel v0.3.5
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]     Checking remove_dir_all v0.5.2
[INFO] [stderr]     Checking futures-io v0.3.5
[INFO] [stderr]     Checking gimli v0.21.0
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling ryu v1.0.4
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.34
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking smallvec v1.4.0
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]    Compiling version_check v0.9.1
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]     Checking inotify-sys v0.1.3
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking fst v0.3.5
[INFO] [stderr]     Checking regex v1.3.7
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking object v0.19.0
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]     Checking rustc-demangle v0.1.16
[INFO] [stderr]     Checking bytes v0.5.4
[INFO] [stderr]    Compiling crc32fast v1.2.0
[INFO] [stderr]     Checking lazycell v1.2.1
[INFO] [stderr]    Compiling snap v1.0.0
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking combine v4.1.0
[INFO] [stderr]     Checking levenshtein_automata v0.1.1
[INFO] [stderr]     Checking tempdir v0.3.7
[INFO] [stderr]     Checking inotify v0.7.0
[INFO] [stderr]     Checking addr2line v0.12.0
[INFO] [stderr]     Checking rayon-core v1.7.0
[INFO] [stderr]     Checking terminal_size v0.1.12
[INFO] [stderr]     Checking termios v0.3.2
[INFO] [stderr]     Checking filetime v0.2.10
[INFO] [stderr]     Checking bstr v0.2.13
[INFO] [stderr]     Checking crossbeam-channel v0.4.2
[INFO] [stderr]     Checking regex-syntax v0.4.2
[INFO] [stderr]     Checking itoa v0.4.5
[INFO] [stderr]     Checking utf8-ranges v1.0.4
[INFO] [stderr]    Compiling anyhow v1.0.31
[INFO] [stderr]     Checking crossbeam v0.7.3
[INFO] [stderr]     Checking fail v0.3.0
[INFO] [stderr]     Checking globset v0.4.5
[INFO] [stderr]     Checking rayon v1.3.0
[INFO] [stderr]     Checking notify v4.0.15
[INFO] [stderr]     Checking tantivy-fst v0.2.1
[INFO] [stderr]     Checking console v0.11.2
[INFO] [stderr]     Checking backtrace v0.3.48
[INFO] [stderr]     Checking bitpacking v0.8.2
[INFO] [stderr]     Checking chrono v0.4.11
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stderr]     Checking owning_ref v0.4.1
[INFO] [stderr]     Checking owned-read v0.4.1
[INFO] [stderr]     Checking tempfile v3.1.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.2
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]    Compiling synstructure v0.12.3
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking murmurhash32 v0.2.0
[INFO] [stderr]     Checking base64 v0.11.0
[INFO] [stderr]     Checking downcast-rs v1.1.1
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]     Checking census v0.4.0
[INFO] [stderr]     Checking number_prefix v0.3.0
[INFO] [stderr]     Checking htmlescape v0.3.1
[INFO] [stderr]     Checking indicatif v0.13.0
[INFO] [stderr]     Checking app_dirs v1.2.1
[INFO] [stderr]     Checking atomicwrites v0.2.5
[INFO] [stderr]    Compiling syn-mid v0.5.0
[INFO] [stderr]     Checking ignore v0.4.15
[INFO] [stderr]    Compiling proc-macro-error v1.0.2
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking humantime v1.3.0
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]     Checking termcolor v1.1.0
[INFO] [stderr]    Compiling pkg-config v0.3.17
[INFO] [stderr]     Checking arc-swap v0.4.6
[INFO] [stderr]    Compiling nix v0.17.0
[INFO] [stderr]     Checking parking_lot_core v0.7.2
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]     Checking signal-hook-registry v1.2.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]     Checking clap v2.33.1
[INFO] [stderr]     Checking signal-hook v0.1.15
[INFO] [stderr]     Checking parking_lot v0.10.2
[INFO] [stderr]    Compiling fuse v0.3.1
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking utf8parse v0.2.0
[INFO] [stderr]     Checking thread-scoped v1.0.2
[INFO] [stderr]     Checking fork v0.1.14
[INFO] [stderr]     Checking crossterm v0.15.0
[INFO] [stderr]     Checking open v1.4.0
[INFO] [stderr]    Compiling serde_derive v1.0.110
[INFO] [stderr]    Compiling pin-project-internal v0.4.16
[INFO] [stderr]    Compiling futures-macro v0.3.5
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]    Compiling structopt-derive v0.4.7
[INFO] [stderr]     Checking pin-project v0.4.16
[INFO] [stderr]     Checking futures-util v0.3.5
[INFO] [stderr]     Checking tantivy-query-grammar v0.12.0
[INFO] [stderr]     Checking structopt v0.3.14
[INFO] [stderr]     Checking rustyline v6.1.2
[INFO] [stderr]     Checking futures-executor v0.3.5
[INFO] [stderr]     Checking futures v0.3.5
[INFO] [stderr]     Checking uuid v0.8.1
[INFO] [stderr]     Checking serde_json v1.0.53
[INFO] [stderr]     Checking rust-stemmers v1.2.0
[INFO] [stderr]     Checking toml v0.5.6
[INFO] [stderr]     Checking tantivy v0.12.0
[INFO] [stderr]     Checking doctags v0.1.0 (/opt/rustwide/workdir/doctags)
[INFO] [stderr]    Migrating doctags/src/lib.rs from 2018 edition to 2021
[INFO] [stderr]     Checking doctagsfs v0.1.0 (/opt/rustwide/workdir/doctagsfs)
[INFO] [stderr]     Checking doctags-cli v0.2.0 (/opt/rustwide/workdir/doctags-cli)
[INFO] [stderr]    Migrating doctagsfs/src/main.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating doctags-cli/src/main.rs from 2018 edition to 2021
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 10s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: snap v1.0.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr] crater-edition-check: doctags v0.1.0 (/opt/rustwide/workdir/doctags) updating edition from 2018 to 2021
[INFO] [stderr] crater-edition-check: doctags-cli v0.2.0 (/opt/rustwide/workdir/doctags-cli) updating edition from 2018 to 2021
[INFO] [stderr] crater-edition-check: doctagsfs v0.1.0 (/opt/rustwide/workdir/doctagsfs) updating edition from 2018 to 2021
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Checking doctags v0.1.0 (/opt/rustwide/workdir/doctags)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:30
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:30
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                 ^----------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Deserialize` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:30
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                              ^--------
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              `Serialize` is not local
[INFO] [stdout]   |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking doctagsfs v0.1.0 (/opt/rustwide/workdir/doctagsfs)
[INFO] [stderr]     Checking doctags-cli v0.2.0 (/opt/rustwide/workdir/doctags-cli)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:30
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:30
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                 ^----------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Deserialize` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:30
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                              ^--------
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              `Serialize` is not local
[INFO] [stdout]   |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 12s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: snap v1.0.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating doctags/Cargo.toml from 2018 edition to 2021
[INFO] [stderr]    Migrating doctags-cli/Cargo.toml from 2018 edition to 2021
[INFO] [stderr]    Migrating doctagsfs/Cargo.toml from 2018 edition to 2021
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Checking doctags v0.1.0 (/opt/rustwide/workdir/doctags)
[INFO] [stderr]    Migrating doctags/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed doctags/src/doctags.rs (1 fix)
[INFO] [stderr]     Checking doctags-cli v0.2.0 (/opt/rustwide/workdir/doctags-cli)
[INFO] [stderr]     Checking doctagsfs v0.1.0 (/opt/rustwide/workdir/doctagsfs)
[INFO] [stderr]    Migrating doctags-cli/src/main.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> doctags-cli/src/ui.rs:170:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |         if let Ok(results) = search::search_matches(index, &searchinput, (rows - 2) as usize) {
[INFO] [stdout]     |                              ----------------------------------------------------------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 116 |         print_selection_list(w, &lines, selected)?;
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |         `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 170 |                     if let Ok(dir) = entry_dir(&lines[selected].text) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                      up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 174 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 208 |                     let _ = open::that(config::config_fn()?);
[INFO] [stdout]     |                                        --------------------
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed doctags-cli/src/main.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> doctags-cli/src/ui.rs:177:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |         if let Ok(results) = search::search_matches(index, &searchinput, (rows - 2) as usize) {
[INFO] [stdout]     |                              ----------------------------------------------------------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 116 |         print_selection_list(w, &lines, selected)?;
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |         `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 177 |                     if let Ok(dir) = entry_dir(&lines[selected].text) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                      up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 183 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 208 |                     let _ = open::that(config::config_fn()?);
[INFO] [stdout]     |                                        --------------------
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> doctags-cli/src/main.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |             env_logger::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 86 |         .init(),
[INFO] [stdout]    |          ---- borrow later used by call
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating doctagsfs/src/main.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed doctagsfs/src/vfs.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> doctags-cli/src/ui.rs:170:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |         if let Ok(results) = search::search_matches(index, &searchinput, (rows - 2) as usize) {
[INFO] [stdout]     |                              ----------------------------------------------------------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 116 |         print_selection_list(w, &lines, selected)?;
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |         `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 170 |                     if let Ok(dir) = entry_dir(&lines[selected].text) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                      up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 174 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 208 |                     let _ = open::that(config::config_fn()?);
[INFO] [stdout]     |                                        --------------------
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> doctags-cli/src/ui.rs:177:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |         if let Ok(results) = search::search_matches(index, &searchinput, (rows - 2) as usize) {
[INFO] [stdout]     |                              ----------------------------------------------------------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 116 |         print_selection_list(w, &lines, selected)?;
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |         `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 177 |                     if let Ok(dir) = entry_dir(&lines[selected].text) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                      up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 183 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 208 |                     let _ = open::that(config::config_fn()?);
[INFO] [stdout]     |                                        --------------------
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.31/src/error.rs:505:1
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> doctags-cli/src/main.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |             env_logger::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...
[INFO] [stdout] 86 |         .init(),
[INFO] [stdout]    |          ---- borrow later used by call
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 16s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: snap v1.0.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr] crater-edition-check: doctags v0.1.0 (/opt/rustwide/workdir/doctags) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: doctags-cli v0.2.0 (/opt/rustwide/workdir/doctags-cli) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: doctagsfs v0.1.0 (/opt/rustwide/workdir/doctagsfs) updating edition from 2021 to 2024
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2024 which implies `resolver = "3"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2024 resolver, specify `workspace.resolver = "3"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Checking doctags v0.1.0 (/opt/rustwide/workdir/doctags)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking doctagsfs v0.1.0 (/opt/rustwide/workdir/doctagsfs)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking doctags-cli v0.2.0 (/opt/rustwide/workdir/doctags-cli)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:30
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:30
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                 ^----------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Deserialize` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 14 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:30
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                              ^--------
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              `Serialize` is not local
[INFO] [stdout]   |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocsetConfig`
[INFO] [stdout] 22 | pub struct DocsetConfig {
[INFO] [stdout]    |            ------------ `DocsetConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:28:30
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ShortcutConfig`
[INFO] [stdout] 29 | pub struct ShortcutConfig {
[INFO] [stdout]    |            -------------- `ShortcutConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> doctags/src/config.rs:36:30
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Deserialize, Serialize, Clone, PartialEq)]
[INFO] [stdout]    |                              ^--------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Serialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CommandType`
[INFO] [stdout] 37 | #[serde(rename_all = "lowercase")]
[INFO] [stdout] 38 | pub enum CommandType {
[INFO] [stdout]    |          ----------- `CommandType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                 ^----------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Deserialize` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> doctags/src/doctags.rs:8:30
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize)]
[INFO] [stdout]   |                              ^--------
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              `Serialize` is not local
[INFO] [stdout]   |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DocTags`
[INFO] [stdout] 9 | pub struct DocTags {
[INFO] [stdout]   |            ------- `DocTags` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> doctags-cli/src/main.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |             env_logger::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] 84 |                 .format(|buf, record| writeln!(buf, "{} {}", record.level(), record.args()))
[INFO] [stdout]    |                                                                                            - temporary value is freed at the end of this statement
[INFO] [stdout] 85 |         }
[INFO] [stdout] 86 |         .init(),
[INFO] [stdout]    |          ---- borrow later used by call
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]   --> doctags-cli/src/main.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |             env_logger::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use
[INFO] [stdout] 84 |                 .format(|buf, record| writeln!(buf, "{} {}", record.level(), record.args()))
[INFO] [stdout]    |                                                                                            - temporary value is freed at the end of this statement
[INFO] [stdout] 85 |         }
[INFO] [stdout] 86 |         .init(),
[INFO] [stdout]    |          ---- borrow later used by call
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `doctags-cli` (bin "doctags" test) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `doctags-cli` (bin "doctags") due to 1 previous error
[INFO] running `Command { std: "docker" "inspect" "3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5", kill_on_drop: false }`
[INFO] [stdout] 3d42180bcb704023ea381a59e09bdf85bd53673da2e877eae0c3b5a0f1edeab5
